Conventionally, there is a technique for storing saved data of an application (for example, a game program or the like) in a storage medium. Saved data is stored in a predetermined storage medium that can be accessed by an information processing apparatus. Then, the saved data is read by the information processing apparatus at appropriate timing and then used in an application that is being executed by the information processing apparatus.
If the saved data stored in the storage medium is copied and the copied saved data can be used, dishonesty (for example, dishonesty in a game) may be committed using the copied saved data. Thus, it is preferable to limit or prohibit the use of copied saved data.
Therefore, the present application discloses an information processing system and an information processing apparatus that are capable of reducing the possibility of the use of saved data copied dishonestly, a storage medium having stored therein an information processing program capable of reducing the possibility of the use of saved data copied dishonestly, and a method of storing saved data.
(1)
An example of an information processing system according to the present specification includes first storage means, second storage means, first storage control means, second storage control means, and use control means. The first storage means is used to store saved data of an application. The second storage control means may be, for example, a storage device (storage medium) different from the first storage means or may be the same storage device (storage medium) as the first storage means. The first storage control means, every time saved data is updated, stores, in the first storage means and the second storage means, identification information indicating the updated saved data. The second storage control means, every time saved data is updated, stores, in at least one of the first storage means and the second storage means, the identification information correspond to the saved data before being updated. The use control means allows use of saved data stored in the first storage means, at least under the condition that the identification information indicating the same saved data is stored in the first storage means and the second storage means.
According to the above configuration (1), it is determined, based on identification information, whether or not it is possible to use saved data. This makes it possible to reduce the possibility of the abuse of saved data. Further, the identification information corresponding to the saved data before being updated is stored, and a determination is made based also on the identification information. This makes it possible to use the saved data even if the process of updating the saved data (a saving process) has not normally been performed.
(2)
The information processing system may further include processing execution means and update means. The processing execution means executes predetermined information processing during execution of the application. The update means, if the predetermined information processing is executed, updates the saved data before the execution of the information processing, and updates the saved data after the execution of the predetermined information processing.
According to the above configuration (2), two saving processes in total are performed before and after predetermined information processing. Based on this, even if the process of updating the saved data (the saving process) has not normally been performed, it is impossible to use the saved data before the two saving processes. This makes it possible to reduce the possibility the abuse of saved data from the past.
(3)
If a user has given an instruction to execute the predetermined information processing, the processing execution means may execute the predetermined information processing under the condition that update of the saved data and the identification information before the execution of the predetermined information processing has been completed.
According to the above configuration (3), the predetermined information processing is not performed in the state where the saved data before the saving process performed before the predetermined information processing remains in first storage means. This makes it possible to further reduce the possibility of the abuse of saved data from the past.
(4)
The saved data may include information indicating an object that appears in the application. The predetermined information processing may be a process of performing communication between the information processing system and another information processing system, and may be a process of deleting the object in the application executed in the information processing system, and adding the object to the application executed in the other information processing system.
According to the above configuration (4), as the predetermined information processing, a communication process for delivering an object that appears in an application executed in an information processing system to the application executed in another information processing system is performed. When such a communication process is performed, dishonesty in a game, such as copying the object, may be committed. According to the above configuration (4), however, it is possible to reduce the possibility of the commission of such dishonesty.
(5)
The information processing system may further include identification information generation means for, if the saved data is updated, generating the identification information indicating the updated saved data based on a random number.
According to the above configuration (5), the use of the identification information generated based on a random number makes it difficult (or impossible) to estimate the content (value) of the identification information. Thus, it is difficult to falsify the identification information so that the content stored in first storage means in the past can be used again. This makes it possible to prevent the abuse of saved data with more certainty.
(6)
The information processing system may further include identification information generation means for, if the saved data is updated, generating the identification information indicating the updated saved data based on the updated saved data.
According to the above configuration (6), it is possible to easily generate the identification information from the saved data.
(7)
The second storage control means may store, in either one of the first storage device and the second storage device, the identification information corresponding to the saved data before being updated. The first storage control means, if the saved data is updated, may store the identification information corresponding to the updated saved data, between the first storage means and the second storage means, first in storage means for storing the identification information corresponding to the saved data before being updated and later in the other storage means.
According to the above configuration (7), the identification information corresponding to the saved data before being updated is stored in storage means for storing the identification information corresponding to the updated saved data first. Based on this, even if, as a result of the fact that the process of updating the saved data (the saving process) has not normally been performed, the content of the identification information is different between the first storage means and the second storage means, it is possible to the use saved data.
(8)
The information processing system may include an information processing apparatus for executing the application. The first storage means may be a storage medium attachable to and detachable from the information processing apparatus. The second storage means may be a storage medium built into the information processing apparatus.
According to the above configuration (8), the saved data is stored in first storage means that is easily replaced in an information processing apparatus. This makes it possible to improve the convenience of a user. Further, the identification information is stored in second storage means in which it is relatively difficult to copy data, and it is determined, using the identification information, whether or not it is possible to use the saved data. This makes it possible to reduce the possibility of the abuse of saved data.
The present specification discloses an information processing apparatus including functions equivalent to those of the information processing apparatus in the information processing system in the above configurations (1) to (8), and discloses an information processing program for causing a computer to execute processing in the information processing apparatus. Further, the present specification discloses a method of storing saved data, the method to be executed in the above configurations (1) to (8).
According to the information processing system, the information processing apparatus, the storage medium having stored therein the information processing program, and the method of storing saved data, it is determined, using identification information of saved data, whether or not it is possible to use the saved data. This makes it possible to reduce the possibility of the abuse of saved data.
These and other objects, features, aspects and advantages of the exemplary embodiments will become more apparent from the following detailed description of the exemplary embodiments when taken in conjunction with the accompanying drawings.